package com.sc.nft.entity.vo.ecologypool;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.sc.nft.enums.EcologyPoolDaoRankTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author 刘国航
 * @since 2024/7/13
 */
@Data
public class EcologyPoolDaoRankConfDetailVO implements Serializable {

    private static final long serialVersionUID = 3680960224759690075L;
    @ApiModelProperty("id")
    private Long id;

    @ApiModelProperty("榜单名称")
    private String rankName;

    @ApiModelProperty("榜单类型")
    private EcologyPoolDaoRankTypeEnum rankType;

    @ApiModelProperty("用户系数")
    private BigDecimal userRatio;

    @ApiModelProperty("熔炼系数")
    private BigDecimal ecologyRatio;

    @ApiModelProperty("入金系数")
    private BigDecimal cashInRatio;

    @ApiModelProperty("贡献值阈值")
    private BigDecimal contributionThreshold;

    @ApiModelProperty("开始时间")
    @NotNull(message = "开始时间不能为空")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date startTime;

    @ApiModelProperty("结束时间")
    @NotNull(message = "结束时间不能为空")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endTime;

    @ApiModelProperty("活动规则")
    private String activityRule;

    @ApiModelProperty("顶部图")
    private String topImage;

    @ApiModelProperty("收益列表")
    private List<EcologyPoolDaoRankConfDetailIncomeVO> incomeList;

}
